﻿using Shop.RemoteModel.PageModule;
using Shop.RemoteModel.PageModule.Model;
using Shop.Service.Interface;
using WeDonekRpc.Client.Interface;

namespace Shop.Service.RpcEvent
{
    public class PageModuleEvent : IRpcApiService
    {
        private readonly IPageModuleService _Service;

        public PageModuleEvent ( IPageModuleService service )
        {
            this._Service = service;
        }

        public PageModuleDto GetPageModule ( GetPageModule obj )
        {
            return this._Service.Get(obj.Id);
        }
        public long AddPageModule ( AddPageModule obj )
        {
            return this._Service.Add(obj.Datum);
        }
        public bool SetPageModule ( SetPageModule obj )
        {
            return this._Service.Set(obj.Id, obj.Datum);
        }
        public void SetPageModuleSort ( SetPageModuleSort obj )
        {
            this._Service.SetSort(obj.Sort);
        }
        public void DeletePageModule ( DeletePageModule obj )
        {
            this._Service.Delete(obj.Id);
        }
        public PageModuleBase[] GetPageModules ( GetPageModules obj )
        {
            return this._Service.Gets(obj.TemplateId);
        }
    }
}
